// (C) Copyright 2006 Marvell International Ltd.
// All Rights Reserved
//

#ifndef __DISPLAY_IPM_H__
#define __DISPLAY_IPM_H__

#include <windows.h>
#include <csync.h>
#include <ipm_api.h>


class IPMClient
{
public:
    void register_client();
    DWORD lcd_notify_proc_state(DWORD proc_state);
    DWORD gcu_notify_proc_state(DWORD proc_state);

private:
    DWORD notify_proc_state();

    BOOL            ipm_enabled;
    CLIENT_ID       ClientID;
    TCHAR           szName[MAX_PATH];  	 // device name
    DWORD           lcd_proc_state;
    DWORD           gcu_proc_state;
    DWORD           previous_proc_state;
    CLockObject     ipm_lock;
};


#endif